<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <title>Document</title>
  <style>
    
  </style>
</head>
<body>
  
</body>
<script>

  // // 判断奇偶
  // var n = 5;
  // // 利用了隐式类型转换
  // if( n%2 ){
  //   console.log(n + "是奇数");
  // }else{
  //   console.log(n + "是偶数");
  // }

  // ======

  // if的小括号中存在隐式类型转换：其他转布尔
  // if( 0 ){
  //   console.log("hello")
  // }

  // =======

  
  // var result = 100;
  // switch( true ){
  //   case result >= 0 && result < 60:
  //     console.log("不及格");break;
  //   case result >= 60 && result < 70:
  //     console.log("及格");break;
  //   case result >= 70 && result < 80:
  //     console.log("一般");break;
  //   case result >= 80 && result < 90:
  //     console.log("良好");break;
  //   case result >= 90 && result <= 100:
  //     console.log("优秀");break;
  //   default:
  //     console.log("成绩错误");
  // }


  // var result = 101;
  // if(result >= 0 && result < 60){
  //   console.log("不及格");
  // }else if(result >= 60 && result < 70){
  //   console.log("及格");
  // }else if(result >= 70 && result < 80){
  //   console.log("一般");
  // }else if(result >= 80 && result < 90){
  //   console.log("良好");
  // }else if(result >= 90 && result <= 100){
  //   console.log("优秀");
  // }else{
  //   console.log("成绩错误");
  // }

  // if-else-if：更适合处理范围条件
    // 代表案例：成绩范围
  // switch：更适合处理具体的值
    // 代表案例：根据数字，打印星期

  // =======

  // 已知3个不同数字，要求，按照从大到小的顺序，打印
  // 穷举法：列出所有可能性
  // a
  //   b,c
  // b
  //   a,c
  // c
  //   a,b
  
  // var a = 2;
  // var b = 5;
  // var c = 7;
  // if(a>b && a>c){
  //   if(b > c){
  //     console.log(a, b, c);
  //   }else{
  //     console.log(a, c, b);
  //   }
  // }else if(b>a && b>c){
  //   if(a > c){
  //     console.log(b, a, c);
  //   }else{
  //     console.log(b, c, a);
  //   }
  // }else if(c>a && c>b){
  //   if(a > b){
  //     console.log(c, a, b);
  //   }else{
  //     console.log(c, b, a);
  //   }
  // }


  // =======

  // 根据指定日期，计算这个日期是这一年的第几天
  // 2023.2.15
  // 是2023年的第46天

  var y = 2024;
  var m = 12;
  var d = 31;

  // 将当前月份之前已经过去的月份天数全部加起来，再加上当月已经过去的天数

  var sum = 0;
  switch( m ){
    case 12: sum += 30;
    case 11: sum += 31;
    case 10: sum = sum + 30;
    case 9: sum = sum + 31;
    case 8: sum = sum + 31;
    case 7: sum = sum + 30;
    case 6: sum = sum + 31;
    case 5: sum = sum + 30;
    case 4: sum = sum + 31;
    case 3:
      if(y%4 === 0 && y%100 !== 0 || y%400 === 0){
        sum = sum + 29;
      }else{
        sum = sum + 28;
      }
    case 2: sum = sum + 31;
    case 1: sum = sum + d;
  }

  console.log( sum );

  // 利用了case穿透，简化代码
  
</script>
</html>